/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  1.4.1                                 |
|   \\  /    A nd           | Web:      http://www.openfoam.org               |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/

FoamFile
{
    version 2.0;
    format ascii;

    root "/home/elisa/TESI/VALIDAZIONE/SHOCK";
    case "TEST_SonicFoam";
    instance "constant";
    local "polyMesh";

    class labelList;

    note "nCells:1600 nActiveFaces:6500 nActivePoints:3402";

    object neighbour;
}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //


6500
(
1
80
2
81
3
82
4
83
5
84
6
85
7
86
8
87
9
88
10
89
11
90
12
91
13
92
14
93
15
94
16
95
17
96
18
97
19
98
20
99
21
100
22
101
23
102
24
103
25
104
26
105
27
106
28
107
29
108
30
109
31
110
32
111
33
112
34
113
35
114
36
115
37
116
38
117
39
118
40
119
41
120
42
121
43
122
44
123
45
124
46
125
47
126
48
127
49
128
50
129
51
130
52
131
53
132
54
133
55
134
56
135
57
136
58
137
59
138
60
139
61
140
62
141
63
142
64
143
65
144
66
145
67
146
68
147
69
148
70
149
71
150
72
151
73
152
74
153
75
154
76
155
77
156
78
157
79
158
159
81
160
82
161
83
162
84
163
85
164
86
165
87
166
88
167
89
168
90
169
91
170
92
171
93
172
94
173
95
174
96
175
97
176
98
177
99
178
100
179
101
180
102
181
103
182
104
183
105
184
106
185
107
186
108
187
109
188
110
189
111
190
112
191
113
192
114
193
115
194
116
195
117
196
118
197
119
198
120
199
121
200
122
201
123
202
124
203
125
204
126
205
127
206
128
207
129
208
130
209
131
210
132
211
133
212
134
213
135
214
136
215
137
216
138
217
139
218
140
219
141
220
142
221
143
222
144
223
145
224
146
225
147
226
148
227
149
228
150
229
151
230
152
231
153
232
154
233
155
234
156
235
157
236
158
237
159
238
239
161
240
162
241
163
242
164
243
165
244
166
245
167
246
168
247
169
248
170
249
171
250
172
251
173
252
174
253
175
254
176
255
177
256
178
257
179
258
180
259
181
260
182
261
183
262
184
263
185
264
186
265
187
266
188
267
189
268
190
269
191
270
192
271
193
272
194
273
195
274
196
275
197
276
198
277
199
278
200
279
201
280
202
281
203
282
204
283
205
284
206
285
207
286
208
287
209
288
210
289
211
290
212
291
213
292
214
293
215
294
216
295
217
296
218
297
219
298
220
299
221
300
222
301
223
302
224
303
225
304
226
305
227
306
228
307
229
308
230
309
231
310
232
311
233
312
234
313
235
314
236
315
237
316
238
317
239
318
319
241
320
242
321
243
322
244
323
245
324
246
325
247
326
248
327
249
328
250
329
251
330
252
331
253
332
254
333
255
334
256
335
257
336
258
337
259
338
260
339
261
340
262
341
263
342
264
343
265
344
266
345
267
346
268
347
269
348
270
349
271
350
272
351
273
352
274
353
275
354
276
355
277
356
278
357
279
358
280
359
281
360
282
361
283
362
284
363
285
364
286
365
287
366
288
367
289
368
290
369
291
370
292
371
293
372
294
373
295
374
296
375
297
376
298
377
299
378
300
379
301
380
302
381
303
382
304
383
305
384
306
385
307
386
308
387
309
388
310
389
311
390
312
391
313
392
314
393
315
394
316
395
317
396
318
397
319
398
399
321
400
322
401
323
402
324
403
325
404
326
405
327
406
328
407
329
408
330
409
331
410
332
411
333
412
334
413
335
414
336
415
337
416
338
417
339
418
340
419
341
420
342
421
343
422
344
423
345
424
346
425
347
426
348
427
349
428
350
429
351
430
352
431
353
432
354
433
355
434
356
435
357
436
358
437
359
438
360
439
361
440
362
441
363
442
364
443
365
444
366
445
367
446
368
447
369
448
370
449
371
450
372
451
373
452
374
453
375
454
376
455
377
456
378
457
379
458
380
459
381
460
382
461
383
462
384
463
385
464
386
465
387
466
388
467
389
468
390
469
391
470
392
471
393
472
394
473
395
474
396
475
397
476
398
477
399
478
479
401
480
402
481
403
482
404
483
405
484
406
485
407
486
408
487
409
488
410
489
411
490
412
491
413
492
414
493
415
494
416
495
417
496
418
497
419
498
420
499
421
500
422
501
423
502
424
503
425
504
426
505
427
506
428
507
429
508
430
509
431
510
432
511
433
512
434
513
435
514
436
515
437
516
438
517
439
518
440
519
441
520
442
521
443
522
444
523
445
524
446
525
447
526
448
527
449
528
450
529
451
530
452
531
453
532
454
533
455
534
456
535
457
536
458
537
459
538
460
539
461
540
462
541
463
542
464
543
465
544
466
545
467
546
468
547
469
548
470
549
471
550
472
551
473
552
474
553
475
554
476
555
477
556
478
557
479
558
559
481
560
482
561
483
562
484
563
485
564
486
565
487
566
488
567
489
568
490
569
491
570
492
571
493
572
494
573
495
574
496
575
497
576
498
577
499
578
500
579
501
580
502
581
503
582
504
583
505
584
506
585
507
586
508
587
509
588
510
589
511
590
512
591
513
592
514
593
515
594
516
595
517
596
518
597
519
598
520
599
521
600
522
601
523
602
524
603
525
604
526
605
527
606
528
607
529
608
530
609
531
610
532
611
533
612
534
613
535
614
536
615
537
616
538
617
539
618
540
619
541
620
542
621
543
622
544
623
545
624
546
625
547
626
548
627
549
628
550
629
551
630
552
631
553
632
554
633
555
634
556
635
557
636
558
637
559
638
639
561
640
562
641
563
642
564
643
565
644
566
645
567
646
568
647
569
648
570
649
571
650
572
651
573
652
574
653
575
654
576
655
577
656
578
657
579
658
580
659
581
660
582
661
583
662
584
663
585
664
586
665
587
666
588
667
589
668
590
669
591
670
592
671
593
672
594
673
595
674
596
675
597
676
598
677
599
678
600
679
601
680
602
681
603
682
604
683
605
684
606
685
607
686
608
687
609
688
610
689
611
690
612
691
613
692
614
693
615
694
616
695
617
696
618
697
619
698
620
699
621
700
622
701
623
702
624
703
625
704
626
705
627
706
628
707
629
708
630
709
631
710
632
711
633
712
634
713
635
714
636
715
637
716
638
717
639
718
719
641
720
642
721
643
722
644
723
645
724
646
725
647
726
648
727
649
728
650
729
651
730
652
731
653
732
654
733
655
734
656
735
657
736
658
737
659
738
660
739
661
740
662
741
663
742
664
743
665
744
666
745
667
746
668
747
669
748
670
749
671
750
672
751
673
752
674
753
675
754
676
755
677
756
678
757
679
758
680
759
681
760
682
761
683
762
684
763
685
764
686
765
687
766
688
767
689
768
690
769
691
770
692
771
693
772
694
773
695
774
696
775
697
776
698
777
699
778
700
779
701
780
702
781
703
782
704
783
705
784
706
785
707
786
708
787
709
788
710
789
711
790
712
791
713
792
714
793
715
794
716
795
717
796
718
797
719
798
799
721
800
722
801
723
802
724
803
725
804
726
805
727
806
728
807
729
808
730
809
731
810
732
811
733
812
734
813
735
814
736
815
737
816
738
817
739
818
740
819
741
820
742
821
743
822
744
823
745
824
746
825
747
826
748
827
749
828
750
829
751
830
752
831
753
832
754
833
755
834
756
835
757
836
758
837
759
838
760
839
761
840
762
841
763
842
764
843
765
844
766
845
767
846
768
847
769
848
770
849
771
850
772
851
773
852
774
853
775
854
776
855
777
856
778
857
779
858
780
859
781
860
782
861
783
862
784
863
785
864
786
865
787
866
788
867
789
868
790
869
791
870
792
871
793
872
794
873
795
874
796
875
797
876
798
877
799
878
879
801
880
802
881
803
882
804
883
805
884
806
885
807
886
808
887
809
888
810
889
811
890
812
891
813
892
814
893
815
894
816
895
817
896
818
897
819
898
820
899
821
900
822
901
823
902
824
903
825
904
826
905
827
906
828
907
829
908
830
909
831
910
832
911
833
912
834
913
835
914
836
915
837
916
838
917
839
918
840
919
841
920
842
921
843
922
844
923
845
924
846
925
847
926
848
927
849
928
850
929
851
930
852
931
853
932
854
933
855
934
856
935
857
936
858
937
859
938
860
939
861
940
862
941
863
942
864
943
865
944
866
945
867
946
868
947
869
948
870
949
871
950
872
951
873
952
874
953
875
954
876
955
877
956
878
957
879
958
959
881
960
882
961
883
962
884
963
885
964
886
965
887
966
888
967
889
968
890
969
891
970
892
971
893
972
894
973
895
974
896
975
897
976
898
977
899
978
900
979
901
980
902
981
903
982
904
983
905
984
906
985
907
986
908
987
909
988
910
989
911
990
912
991
913
992
914
993
915
994
916
995
917
996
918
997
919
998
920
999
921
1000
922
1001
923
1002
924
1003
925
1004
926
1005
927
1006
928
1007
929
1008
930
1009
931
1010
932
1011
933
1012
934
1013
935
1014
936
1015
937
1016
938
1017
939
1018
940
1019
941
1020
942
1021
943
1022
944
1023
945
1024
946
1025
947
1026
948
1027
949
1028
950
1029
951
1030
952
1031
953
1032
954
1033
955
1034
956
1035
957
1036
958
1037
959
1038
1039
961
1040
962
1041
963
1042
964
1043
965
1044
966
1045
967
1046
968
1047
969
1048
970
1049
971
1050
972
1051
973
1052
974
1053
975
1054
976
1055
977
1056
978
1057
979
1058
980
1059
981
1060
982
1061
983
1062
984
1063
985
1064
986
1065
987
1066
988
1067
989
1068
990
1069
991
1070
992
1071
993
1072
994
1073
995
1074
996
1075
997
1076
998
1077
999
1078
1000
1079
1001
1080
1002
1081
1003
1082
1004
1083
1005
1084
1006
1085
1007
1086
1008
1087
1009
1088
1010
1089
1011
1090
1012
1091
1013
1092
1014
1093
1015
1094
1016
1095
1017
1096
1018
1097
1019
1098
1020
1099
1021
1100
1022
1101
1023
1102
1024
1103
1025
1104
1026
1105
1027
1106
1028
1107
1029
1108
1030
1109
1031
1110
1032
1111
1033
1112
1034
1113
1035
1114
1036
1115
1037
1116
1038
1117
1039
1118
1119
1041
1120
1042
1121
1043
1122
1044
1123
1045
1124
1046
1125
1047
1126
1048
1127
1049
1128
1050
1129
1051
1130
1052
1131
1053
1132
1054
1133
1055
1134
1056
1135
1057
1136
1058
1137
1059
1138
1060
1139
1061
1140
1062
1141
1063
1142
1064
1143
1065
1144
1066
1145
1067
1146
1068
1147
1069
1148
1070
1149
1071
1150
1072
1151
1073
1152
1074
1153
1075
1154
1076
1155
1077
1156
1078
1157
1079
1158
1080
1159
1081
1160
1082
1161
1083
1162
1084
1163
1085
1164
1086
1165
1087
1166
1088
1167
1089
1168
1090
1169
1091
1170
1092
1171
1093
1172
1094
1173
1095
1174
1096
1175
1097
1176
1098
1177
1099
1178
1100
1179
1101
1180
1102
1181
1103
1182
1104
1183
1105
1184
1106
1185
1107
1186
1108
1187
1109
1188
1110
1189
1111
1190
1112
1191
1113
1192
1114
1193
1115
1194
1116
1195
1117
1196
1118
1197
1119
1198
1199
1121
1200
1122
1201
1123
1202
1124
1203
1125
1204
1126
1205
1127
1206
1128
1207
1129
1208
1130
1209
1131
1210
1132
1211
1133
1212
1134
1213
1135
1214
1136
1215
1137
1216
1138
1217
1139
1218
1140
1219
1141
1220
1142
1221
1143
1222
1144
1223
1145
1224
1146
1225
1147
1226
1148
1227
1149
1228
1150
1229
1151
1230
1152
1231
1153
1232
1154
1233
1155
1234
1156
1235
1157
1236
1158
1237
1159
1238
1160
1239
1161
1240
1162
1241
1163
1242
1164
1243
1165
1244
1166
1245
1167
1246
1168
1247
1169
1248
1170
1249
1171
1250
1172
1251
1173
1252
1174
1253
1175
1254
1176
1255
1177
1256
1178
1257
1179
1258
1180
1259
1181
1260
1182
1261
1183
1262
1184
1263
1185
1264
1186
1265
1187
1266
1188
1267
1189
1268
1190
1269
1191
1270
1192
1271
1193
1272
1194
1273
1195
1274
1196
1275
1197
1276
1198
1277
1199
1278
1279
1201
1280
1202
1281
1203
1282
1204
1283
1205
1284
1206
1285
1207
1286
1208
1287
1209
1288
1210
1289
1211
1290
1212
1291
1213
1292
1214
1293
1215
1294
1216
1295
1217
1296
1218
1297
1219
1298
1220
1299
1221
1300
1222
1301
1223
1302
1224
1303
1225
1304
1226
1305
1227
1306
1228
1307
1229
1308
1230
1309
1231
1310
1232
1311
1233
1312
1234
1313
1235
1314
1236
1315
1237
1316
1238
1317
1239
1318
1240
1319
1241
1320
1242
1321
1243
1322
1244
1323
1245
1324
1246
1325
1247
1326
1248
1327
1249
1328
1250
1329
1251
1330
1252
1331
1253
1332
1254
1333
1255
1334
1256
1335
1257
1336
1258
1337
1259
1338
1260
1339
1261
1340
1262
1341
1263
1342
1264
1343
1265
1344
1266
1345
1267
1346
1268
1347
1269
1348
1270
1349
1271
1350
1272
1351
1273
1352
1274
1353
1275
1354
1276
1355
1277
1356
1278
1357
1279
1358
1359
1281
1360
1282
1361
1283
1362
1284
1363
1285
1364
1286
1365
1287
1366
1288
1367
1289
1368
1290
1369
1291
1370
1292
1371
1293
1372
1294
1373
1295
1374
1296
1375
1297
1376
1298
1377
1299
1378
1300
1379
1301
1380
1302
1381
1303
1382
1304
1383
1305
1384
1306
1385
1307
1386
1308
1387
1309
1388
1310
1389
1311
1390
1312
1391
1313
1392
1314
1393
1315
1394
1316
1395
1317
1396
1318
1397
1319
1398
1320
1399
1321
1400
1322
1401
1323
1402
1324
1403
1325
1404
1326
1405
1327
1406
1328
1407
1329
1408
1330
1409
1331
1410
1332
1411
1333
1412
1334
1413
1335
1414
1336
1415
1337
1416
1338
1417
1339
1418
1340
1419
1341
1420
1342
1421
1343
1422
1344
1423
1345
1424
1346
1425
1347
1426
1348
1427
1349
1428
1350
1429
1351
1430
1352
1431
1353
1432
1354
1433
1355
1434
1356
1435
1357
1436
1358
1437
1359
1438
1439
1361
1440
1362
1441
1363
1442
1364
1443
1365
1444
1366
1445
1367
1446
1368
1447
1369
1448
1370
1449
1371
1450
1372
1451
1373
1452
1374
1453
1375
1454
1376
1455
1377
1456
1378
1457
1379
1458
1380
1459
1381
1460
1382
1461
1383
1462
1384
1463
1385
1464
1386
1465
1387
1466
1388
1467
1389
1468
1390
1469
1391
1470
1392
1471
1393
1472
1394
1473
1395
1474
1396
1475
1397
1476
1398
1477
1399
1478
1400
1479
1401
1480
1402
1481
1403
1482
1404
1483
1405
1484
1406
1485
1407
1486
1408
1487
1409
1488
1410
1489
1411
1490
1412
1491
1413
1492
1414
1493
1415
1494
1416
1495
1417
1496
1418
1497
1419
1498
1420
1499
1421
1500
1422
1501
1423
1502
1424
1503
1425
1504
1426
1505
1427
1506
1428
1507
1429
1508
1430
1509
1431
1510
1432
1511
1433
1512
1434
1513
1435
1514
1436
1515
1437
1516
1438
1517
1439
1518
1519
1441
1520
1442
1521
1443
1522
1444
1523
1445
1524
1446
1525
1447
1526
1448
1527
1449
1528
1450
1529
1451
1530
1452
1531
1453
1532
1454
1533
1455
1534
1456
1535
1457
1536
1458
1537
1459
1538
1460
1539
1461
1540
1462
1541
1463
1542
1464
1543
1465
1544
1466
1545
1467
1546
1468
1547
1469
1548
1470
1549
1471
1550
1472
1551
1473
1552
1474
1553
1475
1554
1476
1555
1477
1556
1478
1557
1479
1558
1480
1559
1481
1560
1482
1561
1483
1562
1484
1563
1485
1564
1486
1565
1487
1566
1488
1567
1489
1568
1490
1569
1491
1570
1492
1571
1493
1572
1494
1573
1495
1574
1496
1575
1497
1576
1498
1577
1499
1578
1500
1579
1501
1580
1502
1581
1503
1582
1504
1583
1505
1584
1506
1585
1507
1586
1508
1587
1509
1588
1510
1589
1511
1590
1512
1591
1513
1592
1514
1593
1515
1594
1516
1595
1517
1596
1518
1597
1519
1598
1599
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
)


// ************************************************************************* //
